# 我写了五年的软件,卖了几万块, 猫框又有什么了不起

作者:深圳唐先生 这个得从18年年底说起了,当年的我就是一个觉得自己很厉害的人了,自己开发了好几个系统,还挣了点钱,而且重要的是还稳定没出问题,一和别人聊起来就说自己会写代码,那个牛哄哄的样子(哈哈哈……),自嘲一下。

那时候我没有加入过任何一个VFP学习的QQ群,要查资料最主要的就是梅子论坛了,书买了好几本,都是张洪举老师出的关于VFP的书籍;然后就凭着学的那点知识和对VFP的喜受,写了一堆现在自己看起来都非常蠢的代码(现在看自己当年的代码会在后面注释是蠢猪写的)。

18年在梅子论坛看到了加菲猫老师的办班广告,对猫老师的印象就是牛人一个,而且他说VFP可以做非常多的东西,可以做中间层,我就报名参加了。现在讲讲为什么18年到现在我才开始用猫框吧,大家会好奇我这两年为什么不用猫框开发呢,因为自己自从接触了什么叫面向对象编程,什么叫中间层这些概念后,就一直不理解,老想搞清楚什么是三层架构,什么是中间层,什么又是面向对象,一直在纠结这个;因为猫老师上课只是要求大家先按照他的框架开发模式和思路来做,并不讲原理,我就觉得猫老师太小气了,交了钱都不传授(现在看来是错怪了)。

我本身是修电脑的,工作非常忙,然后就一直断断续续的学习;一直搞不明白,看了好多资料,注释了好多代码,然后才渐渐明白什么是类,什么是三层架构,什么是面向对象编程;后面发展到就开始看猫框的代码,和示例的代码,还有XINJIE老师翻的那本框架书籍的代码,从看不懂到去年年底才基本理解为什么要这样写;这时的我就又膨胀了,觉得自己理解了这么多原理,应该可以自己做些工具了,就又开始写一些自己认为是自己最基础框架的代码了,这时才发现太难了,对这些理论的理解很肤浅,根本连一个基础类库都撑不起。

实在没法写那些自己都看不上的代码的时候,我回过头来重新看了猫框的学习录像,我觉得就照猫老师的说法试一次。我以前写的考勤的软件卖了有二三十套,我一直想重写一套简单的,就从考勤软件写起,这是我用猫框写的第一个表单界面,

这个界面我对猫框最基本的操作还不熟,只能参看老师的源码示例;在这种情况下都只花了两个来小时就完成了,真的是非常快(用老师说的一个字就是爽)。发现那些每次要重复写的数据操作方面的代码都不用怎么管了,发现那些停用启用对象的代码一句都没有了,在每个按钮下面只需要写上业务逻辑的代码就可以了,错误处理也不用做了,再也不会像原来张洪举老师那些的错误处理程序(一直跳个不停的错误代码)。

总共就只有这么点代码,而且相同的这种界面的代码都基本一致,这样我要做五年设置界面基本只要复制一下就好了,都不用改动几个字母,非常快,整个小软件从开始动手到给客户用才不到十天就做好了,比当年的效率不知道提高了多少倍,因为我每天也就只有两三个小时的时间来写代码(当然也和我自己对业务逻辑和客户需求比较了解)。 这个是我写的员工资料管理界面:

这个界面最复杂,但最能体现到猫老师说的,将工作重心放在业务逻辑上面,而不是放在那些繁琐的数据处理和界面设置上面;说到这个我就想起来前一段在群里“思明”老师说的“自动档”的话题来了,回过头来看,“自动档”根本就不现实,因为每个界面在不同软件里面要实现各种各样的复杂业务逻辑,根本就没办法实现自动档,我觉得应该叫“AMT”(可以百度一下AMT变速箱)更合适一些,当然大道理讲不清楚,所以就打个比方。

小软件写完了,完成了一个我当年吹的牛,因为我在刚学猫框的时候就吹了个牛,说我会写一套小的考勤软件来替代现在考勤机用的那套非常难用的随机软件,然后这两年我卖了几十台打卡机,一个客户都没用上,让人家都在笑我,我总说正在写正在写,其实都没动,现在写完了,整个人都放松了下来,已经让三个客户开始在用了(虽然没钱收)。

现在总算能理解猫老师说的为什么要先写,要先去开发出软件来才能更好的理解和体会那些基础知识,才能理解什么叫三层架构,什么叫面向对象编程,什么叫中间层;猫老师总说先要挣到钱才能可持续发展下去,才有动力继续学下去,现在我就在想为什么不早点使用框架,这样也不至于两年时间才只理解一点点皮毛,至少也可以多挣些钱了。

写到这里,大家觉得我是在为“猫框”打广告了,其实真的不是,我是因为喜欢VFP,喜欢编程才坚持下来的,金钱都不是学习VFP的主要动力;下面是“广告时间”不知道猫老师能不能给点广告费,开始总结一下猫框的优缺点:

1、 学习门槛低:猫框最大的优点就是只要按照教程和视频来学习,不用多好的基础,只要会写代码就会用猫框开发软件;这样就非常适合水平不高的VFPER来学习,中、高水平的VFPER可以大幅提高开发速度。 2、不用填坑:看了猫老师的框架代码才发现,猫老师把我们会遇到的坑基本全部填上了,如果换成自己再来开发一套相同的框架,那不知道要做到何年何月。 3、完整的解决方案:猫框提供了一整套完整的开发方案;它把很多先进的编程思想完美的融合在一起,解决了很多VFPER想都不敢想的一些方案,有些VFPER也提供了解决方案,但并不有这个成体系,没有这个完整。 4、这个名字没想好,我想应该叫学习方向吧,我自从接触了那些先进理念后,我就不敢再写代码了,总怕自己选的方案不是最优的,总是怕走了弯路(这就和猫老师说的没在主线上,总是在支线上徘徊);可能是我看了非常多的代码,现在再来看猫框的理念,觉得至少是我认为现在最合理和先进的开发工具。

我觉得“猫框”值得在全体VFPER中得到推广,大家一起完善这个开发工具,就好像JAVA里面那些VUE之类的框架一样,虽然猫框是收费的,但它值这个价格,这个是知识变现的现实体现,当大家用这个框架开发出能挣钱的软件之后就会理解这个钱花的有多值了。

题外话,我现在总算明白猫老师为什么不讲原理了,因为VFPER学员的基础都是参差不齐的,而VFP基础和那些概念性的东西对于基础差的或是编程思想不够先进的VFPER反而是最难讲清楚的;如果要那样讲,这个课一年两都讲不下去,反而是让大家先写出软件来,提高了大家的学习积极性和动手能力,回过头来看就发现自己在不知不觉中就慢慢明白为什么要这样写,也就会明白什么是三层,中间层又是个什么概念,面向对象又是面向哪些对象了,就好像有句话说的“只可意会不可言传”,等你体会到之后就会明白这其中的奥妙了,我觉得这才是振兴VFP的正道;比如我就想到我可以在猫框的基础上再派生出一套更适合自己用的类库,做一套身份证读卡器和考勤机操作的接口,这样大家如果用到了就又可以提高开发速度,可以把精力放在更重要的业务逻辑上去了,希望大家可以一起来实现这个想法,让VFP真正振兴一下,就算只能在我们这群可能是最后学习VFP的人中间振兴一把吧。